Skip to content

ci(github): migrate to JSON-based NuGet versioning strategy#35

Merged
ncipollina merged 3 commits into
mainfrom
feat/nuget-versioning
Apr 17, 2026
Merged

ci(github): migrate to JSON-based NuGet versioning strategy#35
ncipollina merged 3 commits into
mainfrom
feat/nuget-versioning

Conversation

@ncipollina

Copy link
Copy Markdown
Contributor

🚀 Pull Request

📋 Summary

Migrates LayeredCraft.StructuredLogging from the MSBuild VersionPrefix publish approach to the new JSON-based versioning strategy introduced in devops-templates#21.

  • Adds eng/package-versioning.json — version manifest with single strategy, prefix 1.1.8
  • Adds publish-preview.yaml — triggers on push to main, publishes 1.1.8-preview.<runNumber>
  • Adds publish-release.yaml — triggers on tag v*, validates tag against manifest, publishes stable version and creates GitHub Release
  • Removes build.yaml — replaced by the two new caller workflows above
  • Updates LayeredCraft.StructuredLogging.slnx — reflects new workflow files and adds eng/package-versioning.json to Solution Items

✅ Checklist

  • My changes build cleanly
  • I've added/updated relevant tests
  • I've added/updated documentation or README
  • I've followed the coding style for this project
  • I've tested the changes locally (if applicable)

🧪 Related Issues or PRs

Depends on LayeredCraft/devops-templates#21 — merge that first.


💬 Notes for Reviewers

Caller workflows reference @main on devops-templates, so devops-templates#21 must be merged before this PR is merged — otherwise the reusable workflows won't resolve.

To test after both are merged: go to Actions → Publish PreviewRun workflow on main.

Directory.Build.props still has VersionPrefix — it's no longer used by CI but can be cleaned up in a follow-up once the new approach is validated.

ncipollina and others added 3 commits April 17, 2026 11:23
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: ee7ccfb312

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".


jobs:
publish:
uses: LayeredCraft/devops-templates/.github/workflows/publish-preview.yml@main

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 Badge Reference reusable workflow from a resolvable ref

This workflow now depends on LayeredCraft/devops-templates/...@main, so every publish run will fail with “workflow was not found” whenever main does not yet contain publish-preview.yml/publish-release.yml (the current state that this PR itself calls out as an external dependency). Because this repo no longer has a fallback build/publish workflow, that makes main pushes and release tags non-runnable until the upstream branch state matches; pinning to a released tag/SHA that already contains these files avoids that breakage.

Useful? React with 👍 / 👎.

@ncipollina ncipollina merged commit 60f5f38 into main Apr 17, 2026
1 check passed
@ncipollina ncipollina deleted the feat/nuget-versioning branch April 17, 2026 16:32
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant